বেসিক Highcharts চার্ট তৈরি করা

Web Development - অ্যাঙ্গুলার হাই চার্ট (Angular High Charts) -

Highcharts একটি জনপ্রিয় জাভাস্ক্রিপ্ট লাইব্রেরি, যা ইন্টারঅ্যাকটিভ এবং রেসপন্সিভ চার্ট তৈরি করতে ব্যবহৃত হয়। Highcharts এর মাধ্যমে আপনি সহজেই বিভিন্ন ধরনের চার্ট যেমন লাইন, বার, পাই, কলাম ইত্যাদি তৈরি করতে পারেন। এখানে আমরা দেখব কিভাবে একটি বেসিক Highcharts চার্ট তৈরি করা যায় এবং তা একটি Angular অ্যাপ্লিকেশনে কিভাবে ইন্টিগ্রেট করা যায়।


1. Highcharts ইনস্টল করা

প্রথমেই Highcharts এবং Highcharts Angular র‍্যাপার প্যাকেজগুলো আপনার Angular প্রজেক্টে ইনস্টল করতে হবে। এটি করার জন্য নিচের কমান্ডগুলো ব্যবহার করুন:

npm install highcharts --save
npm install highcharts-angular --save

2. Highcharts মডিউল ইমপোর্ট করা

Highcharts Angular র‍্যাপার ব্যবহার করতে আপনার অ্যাপ্লিকেশনের মডিউলে Highcharts মডিউল ইমপোর্ট করতে হবে। এটি সাধারণত app.module.ts ফাইলে করা হয়।

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { HighchartsChartModule } from 'highcharts-angular';  // Highcharts মডিউল ইমপোর্ট

@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule, HighchartsChartModule],  // Highcharts মডিউল ইমপোর্ট করা
  providers: [],
  bootstrap: [AppComponent],
})
export class AppModule {}

3. বেসিক Highcharts চার্ট তৈরি করা

এখন আপনার অ্যাপ্লিকেশনের কম্পোনেন্টে একটি বেসিক Highcharts চার্ট তৈরি করতে হবে। এটি সাধারণত app.component.ts ফাইলে করা হয়।

import { Component } from '@angular/core';
import * as Highcharts from 'highcharts';  // Highcharts ইমপোর্ট

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  Highcharts = Highcharts;  // Highcharts রেফারেন্স অ্যাসাইন
  chartOptions = {   // চার্টের অপশন কনফিগারেশন
    chart: {
      type: 'line'  // চার্টের প্রকার (line chart)
    },
    title: {
      text: 'বেসিক লাইন চার্ট'  // চার্টের শিরোনাম
    },
    series: [{
      name: 'ডেটা সিরিজ 1',
      data: [1, 3, 2, 4, 5, 6, 7]  // চার্টের ডেটা
    }]
  };
}

4. কম্পোনেন্টের HTML ফাইলের মধ্যে Highcharts চার্ট রেন্ডার করা

এখন আপনাকে কম্পোনেন্টের HTML ফাইলে Highcharts চার্ট রেন্ডার করতে হবে। app.component.html ফাইলে নিচের কোডটি ব্যবহার করুন:

<div style="width: 100%; height: 400px;">
  <highcharts-chart 
    [Highcharts]="Highcharts" 
    [options]="chartOptions">
  </highcharts-chart>
</div>

এখানে আমরা highcharts-chart ডিরেক্টিভ ব্যবহার করেছি, যা Highcharts চার্টকে Angular কম্পোনেন্ট হিসেবে রেন্ডার করবে। Highcharts এবং chartOptions এর মান টেমপ্লেটে পাস করা হয়েছে।


5. অ্যাপ্লিকেশন রান করা

এখন অ্যাপ্লিকেশনটি চালানোর জন্য নিচের কমান্ডটি ব্যবহার করুন:

ng serve

এটি আপনার অ্যাপ্লিকেশনটি সার্ভারে চালু করবে এবং আপনি এটি http://localhost:4200/ এ দেখতে পারবেন। যদি আপনি সঠিকভাবে সবকিছু অনুসরণ করেন, তাহলে আপনার ব্রাউজারে একটি বেসিক লাইন চার্ট দেখতে পাবেন, যা একটি শিরোনাম এবং কিছু ডেটা দেখাবে।


সারাংশ

এভাবে আপনি Highcharts ব্যবহার করে Angular অ্যাপ্লিকেশনে একটি বেসিক চার্ট তৈরি করতে পারেন। Highcharts এর সাথে কাজ করার জন্য Highcharts এবং highcharts-angular প্যাকেজ ইনস্টল করা প্রয়োজন, এবং তারপর Angular কম্পোনেন্টে চার্টের অপশন কনফিগার করে টেমপ্লেটে রেন্ডার করতে হয়। Highcharts এর মাধ্যমে আপনি সহজেই বিভিন্ন ধরনের ইন্টারঅ্যাকটিভ এবং কাস্টমাইজড চার্ট তৈরি করতে পারেন।

Content added By

Highcharts এর সাথে ডেটা কনফিগারেশন

Highcharts হলো একটি শক্তিশালী ডেটা ভিজ্যুয়ালাইজেশন লাইব্রেরি যা ইন্টারঅ্যাকটিভ এবং রেসপন্সিভ চার্ট তৈরির জন্য ব্যবহৃত হয়। Highcharts ব্যবহার করে ডেটা কনফিগারেশন করা গুরুত্বপূর্ণ, কারণ এটি চার্টের আউটপুট এবং প্রদর্শনকে সরাসরি প্রভাবিত করে। এখানে আমরা দেখব কীভাবে Highcharts এর সাথে ডেটা কনফিগারেশন করতে হয়।


Highcharts এর ডেটা কনফিগারেশন

Highcharts এ ডেটা কনফিগারেশন প্রধানত দুটি উপাদানে বিভক্ত:

  1. Chart Options
  2. Series Data

1. Chart Options

Chart Options Highcharts চার্টের সাধারণ কনফিগারেশন যেমন চার্টের শিরোনাম, এক্সিস লেবেল, টুলটিপ কনফিগারেশন ইত্যাদি নির্ধারণ করে। এই সেটিংসগুলি সাধারণত chart, title, xAxis, yAxis, tooltip ইত্যাদির মাধ্যমে কনফিগার করা হয়।

Chart Configuration Example:

Highcharts.chart('container', {
  chart: {
    type: 'line' // চার্টের প্রকার (line, bar, pie, ইত্যাদি)
  },
  title: {
    text: 'Sales Data' // চার্টের শিরোনাম
  },
  xAxis: {
    categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May'] // এক্সিসের জন্য ক্যাটেগরি (এখানে মাস)
  },
  yAxis: {
    title: {
      text: 'Amount' // yAxis এর শিরোনাম
    }
  },
  tooltip: {
    pointFormat: '{series.name}: <b>{point.y}</b>' // টুলটিপের কনটেন্ট কনফিগারেশন
  },
  series: [{ // ডেটার জন্য সিরিজ কনফিগারেশন
    name: '2024',
    data: [100, 200, 300, 400, 500] // ডেটা পয়েন্ট
  }]
});

2. Series Data

Series Data হলো চার্টের মধ্যে প্রদর্শিত ডেটার মূল অংশ। এটি data আর্গুমেন্ট ব্যবহার করে সিরিজ আকারে ডেটা প্রদর্শন করে। প্রতিটি সিরিজে একটি name (যেমন: "2024 Sales") এবং একটি data অ্যারে (যে অ্যারে ইনপুট ডেটা প্রদান করবে) থাকে।

Series Data Configuration Example:

series: [{
  name: '2024',
  data: [100, 200, 300, 400, 500] // ডেটা পয়েন্টসমূহ
}]

এখানে, name হলো সিরিজের নাম যা লেজেন্ডে প্রদর্শিত হবে, এবং data হলো সেই সিরিজের ডেটা পয়েন্টগুলির অ্যারে যা চার্টে প্রদর্শিত হবে।


Highcharts এ Multiple Series ব্যবহার

Highcharts-এ একাধিক সিরিজ ব্যবহার করে আপনি একাধিক ডেটা সেট একটি চার্টে প্রদর্শন করতে পারেন। একাধিক সিরিজের ডেটা কনফিগারেশন এরকম হবে:

Highcharts.chart('container', {
  chart: {
    type: 'line'
  },
  title: {
    text: 'Sales Data Comparison'
  },
  xAxis: {
    categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May']
  },
  yAxis: {
    title: {
      text: 'Amount'
    }
  },
  series: [{
    name: '2024 Sales',
    data: [100, 200, 300, 400, 500]
  }, {
    name: '2025 Sales',
    data: [150, 250, 350, 450, 550]
  }]
});

এখানে দুটি সিরিজ 2024 Sales এবং 2025 Sales ডেটা দিয়ে প্রদর্শিত হচ্ছে।


3. Highcharts এ ডেটার ধরনের কনফিগারেশন

Highcharts বিভিন্ন ধরনের ডেটা প্রদর্শনের জন্য বিভিন্ন series.type ব্যবহার করতে দেয়, যেমন:

  • line: লাইন চার্ট।
  • bar: বার চার্ট।
  • column: কলাম চার্ট।
  • pie: পাই চার্ট।

Example:

Highcharts.chart('container', {
  chart: {
    type: 'pie' // পাই চার্ট কনফিগারেশন
  },
  title: {
    text: 'Market Share'
  },
  series: [{
    name: 'Market Share',
    colorByPoint: true,
    data: [{
      name: 'Company A',
      y: 45
    }, {
      name: 'Company B',
      y: 55
    }]
  }]
});

4. Highcharts ডেটা কাস্টমাইজেশন

Highcharts এর মধ্যে আপনি ডেটা কাস্টমাইজেশনও করতে পারেন যেমন:

  • Custom Tooltip: টুলটিপের কাস্টম কনফিগারেশন।
  • Data Labels: ডেটা পয়েন্টের উপরে লেবেল দেখানো।
  • Data Markers: পয়েন্টের চিহ্ন নির্ধারণ।

Custom Tooltip Example:

tooltip: {
  pointFormatter: function () {
    return this.series.name + ': <b>' + this.y + '</b>';
  }
}

সারাংশ

Highcharts এর সাথে ডেটা কনফিগারেশন করতে হলে, chart options এবং series data এর মাধ্যমে চার্টের সমস্ত সেটিংস কনফিগার করা হয়। আপনি একাধিক সিরিজ, ডেটা পয়েন্ট, কাস্টম টুলটিপ এবং অন্যান্য ভিজ্যুয়াল বৈশিষ্ট্য ব্যবহার করে আপনার চার্ট কাস্টমাইজ করতে পারেন। Highcharts এর ডেটা কনফিগারেশন অত্যন্ত ফ্লেক্সিবল এবং সহজ, যা আপনাকে বিভিন্ন ধরনের ডেটা ভিজ্যুয়ালাইজেশন তৈরিতে সহায়তা করে।

Content added By

চার্টের প্রকারভেদ (Line, Bar, Pie, Column ইত্যাদি)

ডেটা ভিজ্যুয়ালাইজেশনের জন্য বিভিন্ন ধরনের চার্ট ব্যবহৃত হয়, যার মধ্যে Line, Bar, Pie, Column সহ অনেক ধরনের চার্ট রয়েছে। প্রতিটি চার্টের নিজস্ব উদ্দেশ্য এবং ব্যবহার রয়েছে। এখানে বিভিন্ন ধরনের চার্টের বিস্তারিত ব্যাখ্যা দেওয়া হলো।


1. Line Chart (লাইন চার্ট)

Line Chart হলো একটি চার্ট, যা সময় বা কোনো ক্রম অনুযায়ী ডেটা পয়েন্টগুলিকে একত্রিত করতে লাইন ব্যবহার করে। এটি মূলত ধারাবাহিক ডেটা প্রদর্শন করতে ব্যবহৃত হয়, যেমন ট্রেন্ড বা সিজনাল চেঞ্জ

  • ব্যবহার: সাধারণত সময়ের সাথে পরিবর্তনশীল ডেটা (যেমন, স্টক মার্কেট, ওয়েবসাইট ট্রাফিক, মাসিক সেলস) প্রদর্শন করতে ব্যবহৃত হয়।
  • উদাহরণ: মাসের শেষে সেলস বা প্রোডাক্টের গ্রোথ ট্র্যাক করা।

বিস্তারিত উদাহরণ:

জুলাই, আগস্ট, সেপ্টেম্বর, অক্টোবর মাসে বিক্রির বৃদ্ধি/হ্রাস।

2. Bar Chart (বার চার্ট)

Bar Chart হল একটি চার্ট, যা ডেটা পয়েন্টগুলিকে অনুভূমিক বা উল্লম্ব বার দিয়ে প্রদর্শন করে। বার চার্ট ব্যবহার করে বিভিন্ন ক্যাটেগরির মধ্যে তুলনা করা যায়।

  • ব্যবহার: বার চার্ট ব্যবহৃত হয় যখন বিভিন্ন ক্যাটেগরি বা গ্রুপের মধ্যে তুলনা করতে হয়।
  • উদাহরণ: বিভিন্ন প্রোডাক্টের সেলস বা বিভিন্ন দেশের জনসংখ্যা তুলনা।

বিস্তারিত উদাহরণ:

ফলের বিভিন্ন প্রকারের বিক্রয় পরিসংখ্যান: আপেল, কলা, কমলা।

3. Pie Chart (পাই চার্ট)

Pie Chart হল একটি সার্কুলার চার্ট, যা একটি পুরো (100%) ডেটা সেটকে বিভিন্ন অংশে বিভক্ত করে। এটি প্রতিটি অংশের শতাংশ বা পরিমাণের ভিত্তিতে ভিন্ন ভিন্ন স্লাইসে ভাগ করে দেখায়।

  • ব্যবহার: যখন আপনি বিভিন্ন অংশের শতাংশ বুঝাতে চান বা একটি পকেটে ভাগ করা ডেটা দেখাতে চান, তখন পাই চার্ট ব্যবহার করা হয়।
  • উদাহরণ: একটি ব্যবসায়ের মার্কেট শেয়ার বা পণ্য বিক্রির শেয়ার।

বিস্তারিত উদাহরণ:

ব্যবসায়িক মার্কেট শেয়ার: কোম্পানি A - 40%, কোম্পানি B - 30%, কোম্পানি C - 30%

4. Column Chart (কলাম চার্ট)

Column Chart হলো এক ধরনের চার্ট যেখানে ডেটা পয়েন্টগুলোকে উল্লম্ব কলাম দিয়ে প্রদর্শন করা হয়। এটি বার চার্টের মতো হলেও, বারগুলো উল্লম্ব হয়।

  • ব্যবহার: যখন আপনি ক্যাটেগরি বা গ্রুপের মধ্যে তুলনা করতে চান, বিশেষ করে যেখানে ক্রমাগত সংখ্যা থাকতে পারে (যেমন সেলস, উৎপাদন বা লাভ)।
  • উদাহরণ: এক বছরের সেলস ডেটা যেখানে প্রতিটি মাসের সেলস দেখা যাচ্ছে।

বিস্তারিত উদাহরণ:

জানুয়ারী থেকে ডিসেম্বর মাস পর্যন্ত সেলস পরিসংখ্যান।

5. Area Chart (এरिया চার্ট)

Area Chart হল একটি লাইন চার্টের উন্নত রূপ, যেখানে ডেটা পয়েন্টগুলির নিচে একটি পূর্ণাঙ্গ ক্ষেত্র তৈরি হয়। এটি লাইন চার্টের মতো সময়ের সাথে পরিবর্তন দেখায়, কিন্তু ভলিউম বা পরিমাণের উপর ফোকাস করে।

  • ব্যবহার: এটি ব্যবহৃত হয় যখন একাধিক ডেটা সিরিজকে তুলনা করা হয় এবং ডেটার পরিমাণের গড় হিসাব করা হয়।
  • উদাহরণ: বিভিন্ন পণ্যের সেলসের প্রবণতা ও পরিমাণ।

বিস্তারিত উদাহরণ:

এলাকা ভিত্তিক গ্রোথ প্রিন্ট (যেমন, বিভিন্ন দেশের জন্য সেলস ডেটা)।

6. Radar Chart (রাডার চার্ট)

Radar Chart হল একটি চারটি বা তার বেশি এক্সিসের সাথে একটি চার্ট, যা কেন্দ্র থেকে শুরু করে বাহিরের দিকে প্রসারিত হয়। এই চার্টটি সাধারণত তুলনামূলক বিশ্লেষণে ব্যবহৃত হয়।

  • ব্যবহার: একাধিক ভ্যারিয়েবলের মধ্যে সম্পর্ক বা পারফরম্যান্স তুলনা করতে ব্যবহৃত হয়।
  • উদাহরণ: বিভিন্ন পণ্যের পারফরম্যান্স বা স্কিল সেট।

বিস্তারিত উদাহরণ:

বিভিন্ন বিক্রয় প্রতিনিধির পারফরম্যান্সের তুলনা।

7. Bubble Chart (বাবল চার্ট)

Bubble Chart হল একটি বিশেষ ধরনের চার্ট যা স্ক্যাটার প্লটের মতো কাজ করে, তবে এখানে প্রতিটি পয়েন্টের একটি অতিরিক্ত মাত্রা থাকে যা বাবল (বুদবুদ) আকারের মাধ্যমে প্রদর্শিত হয়।

  • ব্যবহার: যখন আপনার কাছে একাধিক ভ্যারিয়েবল থাকে (যেমন, আয়, বয়স, গ্রাহক সন্তুষ্টি) এবং আপনি তাদের পারস্পরিক সম্পর্ক দেখাতে চান।
  • উদাহরণ: বিভিন্ন কোম্পানির বিক্রয় এবং লাভের মধ্যে সম্পর্কের বিশ্লেষণ।

বিস্তারিত উদাহরণ:

বিভিন্ন কোম্পানির সেলস পরিমাণ এবং লাভের সম্পর্ক।

সারাংশ

প্রতিটি চার্টের প্রকারের উদ্দেশ্য এবং ব্যবহার আলাদা। ডেটা ভিজ্যুয়ালাইজেশনের জন্য উপযুক্ত চার্ট নির্বাচন করা গুরুত্বপূর্ণ, কারণ প্রতিটি চার্ট আলাদা ধরনের ডেটা প্রদর্শন করতে সাহায্য করে। Line, Bar, Pie, Column, Area, Radar, এবং Bubble চার্টগুলি বিভিন্ন পরিস্থিতিতে এবং বিভিন্ন ডেটা প্রদর্শনের জন্য ব্যবহৃত হয়।

Content added By

চার্টের শিরোনাম, এক্সিস এবং লেবেল কনফিগারেশন

Highcharts এর মাধ্যমে চার্ট তৈরি করার সময়, আপনি চার্টের শিরোনাম, এক্সিস এবং লেবেল কনফিগার করতে পারেন। এগুলো চার্টের বোধগম্যতা এবং দৃশ্যমানতা উন্নত করতে সাহায্য করে। এখানে আমরা শিরোনাম, এক্সিস এবং লেবেল কনফিগারেশনের কিছু সাধারণ কনফিগারেশন ব্যাখ্যা করব।


1. চার্টের শিরোনাম কনফিগারেশন

Highcharts এর মাধ্যমে আপনি চার্টের শিরোনাম সহজেই কাস্টমাইজ করতে পারেন। শিরোনামটি চার্টের উপরের দিকে অবস্থান করে এবং এটি ডেটা বা ট্রেন্ডের সংক্ষিপ্ত বর্ণনা প্রদান করে।

শিরোনাম কনফিগারেশন উদাহরণ:

Highcharts.chart('container', {
  title: {
    text: 'সামগ্রিক বিক্রয় বিশ্লেষণ',
    style: {
      color: '#333333',
      fontSize: '18px',
      fontWeight: 'bold'
    }
  },
  // অন্যান্য কনফিগারেশন
});
  • text: শিরোনামের টেক্সট সেট করে।
  • style: শিরোনামের স্টাইল কাস্টমাইজ করার জন্য। এখানে আপনি ফন্টের রং, সাইজ, ফন্ট-ওজন ইত্যাদি কাস্টমাইজ করতে পারেন।

2. এক্সিস কনফিগারেশন

Highcharts এর এক্সিস (অক্ষ) কনফিগারেশন চার্টের অনুভূমিক (x-axis) এবং উল্লম্ব (y-axis) এক্সিসগুলোর জন্য ব্যবহৃত হয়। আপনি এক্সিসের শিরোনাম, স্কেল, লেবেল, টাইপ ইত্যাদি কাস্টমাইজ করতে পারেন।

এক্সিস কনফিগারেশন উদাহরণ:

Highcharts.chart('container', {
  xAxis: {
    categories: ['জানুয়ারি', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে'],
    title: {
      text: 'মাস'
    },
    labels: {
      style: {
        color: '#666666',
        fontSize: '12px'
      }
    }
  },
  yAxis: {
    title: {
      text: 'বিক্রয় পরিমাণ'
    },
    labels: {
      style: {
        color: '#666666',
        fontSize: '12px'
      }
    }
  },
  // অন্যান্য কনফিগারেশন
});
  • xAxis: অনুভূমিক এক্সিস কনফিগারেশন।
    • categories: এক্সিসের মান বা ক্যাটেগরি (যেমন মাস)।
    • title: এক্সিসের শিরোনাম।
    • labels: এক্সিস লেবেলের স্টাইল কাস্টমাইজ করা।
  • yAxis: উল্লম্ব এক্সিস কনফিগারেশন।
    • title: উল্লম্ব এক্সিসের শিরোনাম।
    • labels: এক্সিসের লেবেল কাস্টমাইজ করা (যেমন রঙ, ফন্ট সাইজ)।

3. লেবেল কনফিগারেশন

Highcharts এর মাধ্যমে আপনি চার্টের এক্সিস এবং সিরিজের জন্য লেবেল কাস্টমাইজ করতে পারবেন। লেবেলগুলি একটি চার্টের বিভিন্ন অংশের তথ্য প্রদর্শন করে এবং আপনার চার্টকে আরও ইনফর্মেটিভ এবং দৃশ্যমান করে তোলে।

লেবেল কনফিগারেশন উদাহরণ:

Highcharts.chart('container', {
  xAxis: {
    categories: ['জানুয়ারি', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে'],
    labels: {
      formatter: function() {
        return this.value.toUpperCase(); // ক্যাটেগরি নামের স্টাইল পরিবর্তন করা
      }
    }
  },
  yAxis: {
    labels: {
      formatter: function() {
        return this.value + ' ইউনিট'; // y-axis লেবেল কাস্টমাইজ করা
      }
    }
  },
  series: [{
    data: [5, 6, 7, 8, 9],
    dataLabels: {
      enabled: true,
      formatter: function() {
        return this.y + ' বিক্রয়'; // সিরিজের ডেটা লেবেল কাস্টমাইজ করা
      }
    }
  }]
});
  • formatter: এটি একটি কাস্টম ফাংশন যা আপনাকে লেবেলের কনটেন্ট কাস্টমাইজ করতে দেয়। আপনি এখানে JavaScript কোড লিখে লেবেলের মান পরিবর্তন করতে পারেন।
  • dataLabels: সিরিজের ডেটার উপর লেবেল প্রদর্শন করতে ব্যবহৃত হয়। enabled: true সেট করলে লেবেল প্রদর্শিত হবে এবং formatter ফাংশন দিয়ে লেবেলের কনটেন্ট কাস্টমাইজ করা যাবে।

সারাংশ

Highcharts ব্যবহার করে আপনি চার্টের শিরোনাম, এক্সিস এবং লেবেল কাস্টমাইজ করতে পারেন, যা চার্টের দৃশ্যমানতা এবং বোধগম্যতা বাড়াতে সাহায্য করে। শিরোনাম, এক্সিস এবং লেবেলগুলি যেভাবে কাস্টমাইজ করা যায় তা ডেটা এবং ব্যবহারকারীর জন্য আরও স্পষ্ট এবং কার্যকর করে তোলে।

Content added By

ডায়নামিক ডেটা দিয়ে চার্ট আপডেট করা

Highcharts ব্যবহার করে আপনি ডায়নামিক ডেটার মাধ্যমে আপনার চার্ট আপডেট করতে পারেন। Angular এবং Highcharts একত্রে ব্যবহার করার সময়, আপনি বিভিন্নভাবে ডেটা পরিবর্তন করতে পারেন এবং সেই অনুযায়ী চার্টের ভিজ্যুয়াল রিফ্রেশ বা আপডেট করতে পারেন।

এখানে, আমরা দেখব কিভাবে ডায়নামিক ডেটা ব্যবহার করে Highcharts চার্ট আপডেট করা যায়।


ডায়নামিক ডেটা ইনজেকশন

Highcharts এর মধ্যে ডায়নামিক ডেটা ইনজেকশন করতে হলে, আপনি আপনার কম্পোনেন্টের মধ্যে ডেটা পরিবর্তন করবেন এবং সেই অনুযায়ী Highcharts কম্পোনেন্ট আপডেট হবে। Angular এর ngOnChanges বা setInterval এর মাধ্যমে ডেটা আপডেট করতে পারেন।

এখানে, আমরা একটি setInterval ব্যবহার করে প্রতি ২ সেকেন্ডে ডেটা পরিবর্তন করার উদাহরণ দেখাব।


উদাহরণ: ডায়নামিক ডেটা দিয়ে চার্ট আপডেট করা

  1. app.component.ts ফাইলে Highcharts এর জন্য ডায়নামিক ডেটা কনফিগারেশন করুন:
import { Component, OnInit } from '@angular/core';
import * as Highcharts from 'highcharts';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
  Highcharts = Highcharts;  // Highcharts ব্যবহার করার জন্য
  chartOptions: any;  // চার্টের অপশন স্টোর করার জন্য

  // ডিফল্ট ডেটা
  chartData = [1, 2, 3, 4, 5, 6, 7, 8];

  ngOnInit() {
    // প্রথমে চার্টের অপশন সেট করা
    this.chartOptions = {
      chart: {
        type: 'line'
      },
      title: {
        text: 'ডায়নামিক ডেটা দিয়ে আপডেট হওয়া চার্ট'
      },
      series: [{
        name: 'Sales',
        data: this.chartData
      }]
    };

    // প্রতি ২ সেকেন্ডে ডেটা পরিবর্তন করে চার্ট আপডেট করা
    setInterval(() => {
      // নতুন ডেটা তৈরি
      this.chartData = this.chartData.map(data => data + Math.floor(Math.random() * 10));

      // Highcharts এর মাধ্যমে চার্ট আপডেট করা
      this.updateChart();
    }, 2000);
  }

  // Highcharts চার্ট আপডেট করা
  updateChart() {
    // Highcharts.chart() ব্যবহার করে চার্ট আপডেট করা
    Highcharts.charts[0].series[0].setData(this.chartData);
  }
}
  1. app.component.html ফাইলে Highcharts কম্পোনেন্ট যোগ করুন:
<div style="height: 400px;">
  <highcharts-chart
    [Highcharts]="Highcharts"
    [options]="chartOptions"
    style="width: 100%; height: 100%; display: block;">
  </highcharts-chart>
</div>

ব্যাখ্যা:

  1. chartOptions: আমরা প্রথমে chartOptions সেট করছি যা আমাদের চার্টের কনফিগারেশন ধারণ করে।
  2. chartData: একটি ডিফল্ট ডেটা সিরিজ হিসেবে শুরুতে আমরা কিছু সংখ্যা ব্যবহার করেছি। এই ডেটাটি প্রতি ২ সেকেন্ডে পরিবর্তিত হবে।
  3. setInterval: প্রতি ২ সেকেন্ডে setInterval ব্যবহার করে ডেটা আপডেট করা হচ্ছে। এই সময়ে একটি random number যোগ করা হচ্ছে প্রতিটি ডেটা পয়েন্টে।
  4. updateChart(): Highcharts.charts[0].series[0].setData(this.chartData); ব্যবহার করে, আমরা Highcharts লাইব্রেরির মাধ্যমে নতুন ডেটা ইনজেক্ট করে চার্ট আপডেট করছি।

Highcharts এর সাথে ডায়নামিক ডেটা হ্যান্ডলিং

Highcharts এ ডেটা আপডেট করার জন্য setData() ফাংশন ব্যবহার করা হয়, যা পূর্ববর্তী ডেটাকে নতুন ডেটার সাথে প্রতিস্থাপন করে।

এছাড়াও, আপনি ডেটা আপডেট করার সময় animation বা smooth transitions ব্যবহার করতে পারেন যাতে ব্যবহারকারীর জন্য এটি আরো ইন্টারঅ্যাকটিভ হয়।


সারাংশ

Highcharts এর মাধ্যমে ডায়নামিক ডেটা ব্যবহার করে আপনি রিয়েল-টাইম ভিজ্যুয়ালাইজেশন তৈরি করতে পারেন। Angular এর মধ্যে setInterval বা অন্যান্য ডেটা পরিবর্তনের পদ্ধতি ব্যবহার করে আপনি আপনার চার্টের ডেটা প্রতি সেকেন্ডে বা সময় অনুযায়ী আপডেট করতে পারেন। setData() ফাংশন দিয়ে Highcharts চার্টে নতুন ডেটা ইনজেক্ট করার মাধ্যমে ডায়নামিক এবং ইন্টারঅ্যাকটিভ চার্ট তৈরি করা সম্ভব।

Content added By
Promotion